<?php

/** 
 * Copyright (c) 2012, Jiehun.com.cn Inc. All Rights Reserved
 * @author dengxiaolong@jiehun.com.cn
 * @date 2012-1-15
 * @version 1.0 
 * @brief 
 *  
 **/
interface ImageHandlerInterface
{
	/**
	 * 压缩图片到一定质量
	 *
	 * @param string $from
	 * @param string $to
	 * @param int $quality
	 */
	function compress($from, $to, $quality); 
	
	/**
	  * 裁剪图片
	  * 
	  * @param string $from 
	  * @param string $to
	  * @param int $width 裁剪的宽度
	  * @param int $height 裁剪的高度
	  * @param int $x 裁剪的左边距
	  * @param int $y 裁剪的上边距
	  * @param float $rate 缩放比率
	  */
	 function crop($from, $to, $width, $height, $x, $y);
	 
	 
	 /**
	  * 对图片进行缩放
	  * 
	  * @param $from
	  * @param $to
	  * @param $rate 缩放比率
	  */
	 function zoom($from, $to, $rate);
	 
	 /**
	 * 裁剪图片，并保持裁剪后的图片能保留最全的内容
	 *
	 * @param string $from
	 * @param string $to
	 * @param int $width
	 * @param int $height
	 */
	 function cropThumb($from, $to, $width, $height);
	
	/**
	 * 对图片进行等比例缩放（不会裁剪图片）
	 *
	 * @param string $from
	 * @param string $to
	 * @param int $width
	 * @param int $height
	 */
	function thumb($from, $to, $width, $height);
	
	/**
	  * 
	  * 取图片的缩略图，没有达到指定尺寸的部分用背景色填充
	  * @param $from
	  * @param $to
	  * @param $width
	  * @param $height
	  * @param $bgColor
	  */
	 function fillThumb($from, $to, $width, $height, $bgColor = 'white');
	 
	 /**
	  * 转换图片的格式
	  * @param $from
	  * @param $to
	  * @param $newFormat
	  */
	 function changeFormat($from, $to, $newFormat);
	 
	 /**
	  * 合并图片
	  * @param $imgA
	  * @param $imgB
	  * @param $to
	  * @param $left
	  * @param $top
	  */
	 function merge($imgA, $imgB, $to, $left, $top);
}
